package com.css.zfzx.fwsjcj.modules.structure.entity;


import javax.persistence.*;
import java.util.Date;
import java.util.Objects;

/**
 * TODO
 *
 * @author  whj
 * @version 1.0
 * @date 2021/8/16  15:44
 */

@Entity
@Table(name = "fw_other_structure", schema = "fwsjcj", catalog = "")
public class FwOtherStructureEntity {
    private String id;
    /**
     * 样本编号
     */
    private String otherStructureNum;
    /**
     * 所属省份
     */
    private String belongtoProvince;
    /**
     * 所属地级市
     */
    private String belongtoCity;
    /**
     * 所属区县
     */
    private String belongtoArea;
    /**
     * 所属乡镇街道
     */
    private String belongtoStreet;
    /**
     * 经度
     */
    private String longitude;
    /**
     * 纬度
     */
    private String latitude;
    /**
     * 所属村居委会
     */
    private String belongtoTown;

    /**
     * 样本建筑名称
     */
    private String buildingName;
    /**
     * 建造年代
     */
    private String buildingAge;
    /**
     * 场地类型
     */
    private String siteType;
    /**
     * 基础类型
     */
    private String baseType;
    /**
     * 设防标准
     */
    private String fortifyStandard;
    /**
     * 自振周期
     */
    private Double naturalVibrationPeriod;
    /**
     * 规则程度
     */
    private String regularLevel;
    /**
     * 建筑面积
     */
    private Double buildingArea;
    /**
     * 建筑长度
     */
    private Double buildingLength;
    /**
     * 建筑宽度
     */
    private Double buildingWidth;
    /**
     * 层数
     */
    private Integer floorNum;
    /**
     * 建筑高度
     */
    private Double buildingHeight;
    /**
     * 承重方式
     */
    private String czType;
    /**
     * 承重墙砌筑方式
     */
    private String czqqzType;
    /**
     * 纵横墙交接处墙内孔道
     */
    private String zhqjjcqkd;
    /**
     * 楼梯间布置
     */
    private String ltjbz;
    /**
     * 外墙厚度
     */
    private Integer outWallThick;
    /**
     * 内隔墙厚度
     */
    private Integer inWallThick;
    /**
     * 墙体材质
     */
    private String wallMaterial;
    /**
     * 砂浆类型
     */
    private String mortarType;
    /**
     * 砂浆强度
     */
    private String mortarStrength;
    /**
     * 注混凝土强度等级
     */
    private String zhntqdLevel;
    /**
     * 主要柱界面尺寸
     */
    private String zyzjmSize;
    /**
     * 主要梁截面面尺寸
     */
    private String zyljmSize;
    /**
     * 最大柱间距
     */
    private Double zdzSpan;
    /**
     * 最大梁跨度
     */
    private Double zdlkd;
    /**
     * 剪力墙混凝土强度等级
     */
    private String jlqhntqdLevel;
    /**
     * 剪力墙最大间距
     */
    private Double jlqzdSpan;
    /**
     * 剪力墙厚度
     */
    private String shearwellThickness;
    /**
     * 屋盖类别
     */
    private String roofType;
    /**
     * 楼盖类别
     */
    private String floorType;
    /**
     * 出屋面构件
     */
    private String cwmgj;
    /**
     * 女儿墙设置
     */
    private String parapetInstall;
    /**
     * 构造柱位置
     */
    private String czzPlace;
    /**
     * 圈梁设置
     */
    private String jlInstall;
    /**
     * 圈梁最大水平间距
     */
    private String jlzdspSpan;
    /**
     * 圈梁闭合情况
     */
    private String jlbhqk;
    /**
     * 建筑现状
     */
    private String buildingSituation;
    /**
     * 建筑造价/重置单价
     */
    private Double buildingCost;
    /**
     * 建筑照片
     */
    private String buildingPhoto;
    /**
     * 详细文档
     */
    private String detailFile;
    /**
     * 信息说明
     */
    private String msgIllustrate;
    /**
     * 审核状态
     */
    private String status;
    private String checkUser;
    private String checkOpinion;
    private String createUser;
    private String collectUser;
    private Date createTime;
    private String updateUser;
    private Date updateTime;
    private String delFlag;
    private String taskId;
    private String taskName;
    /**
     * 超级管理员退回意见
     * @return
     */
    private String superBackOpinion;
    /**
     * 省级退回意见
     * @return
     */
    private String provinceBackOpinion;
    @Basic
    @Column(name = "super_back_opinion")
    public String getSuperBackOpinion() {
        return superBackOpinion;
    }

    public void setSuperBackOpinion(String superBackOpinion) {
        this.superBackOpinion = superBackOpinion;
    }

    @Basic
    @Column(name = "province_back_opinion")
    public String getProvinceBackOpinion() {
        return provinceBackOpinion;
    }

    public void setProvinceBackOpinion(String provinceBackOpinion) {
        this.provinceBackOpinion = provinceBackOpinion;
    }
    @Id
    @Column(name = "id")
    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    @Basic
    @Column(name = "other_structure_num")
    public String getOtherStructureNum() {
        return otherStructureNum;
    }

    public void setOtherStructureNum(String otherStructureNum) {
        this.otherStructureNum = otherStructureNum;
    }

    @Basic
    @Column(name = "belongto_province")
    public String getBelongtoProvince() {
        return belongtoProvince;
    }

    public void setBelongtoProvince(String belongtoProvince) {
        this.belongtoProvince = belongtoProvince;
    }

    @Basic
    @Column(name = "belongto_city")
    public String getBelongtoCity() {
        return belongtoCity;
    }

    public void setBelongtoCity(String belongtoCity) {
        this.belongtoCity = belongtoCity;
    }

    @Basic
    @Column(name = "belongto_area")
    public String getBelongtoArea() {
        return belongtoArea;
    }

    public void setBelongtoArea(String belongtoArea) {
        this.belongtoArea = belongtoArea;
    }

    @Basic
    @Column(name = "belongto_street")
    public String getBelongtoStreet() {
        return belongtoStreet;
    }

    public void setBelongtoStreet(String belongtoStreet) {
        this.belongtoStreet = belongtoStreet;
    }

    @Basic
    @Column(name = "longitude")
    public String getLongitude() {
        return longitude;
    }

    public void setLongitude(String longitude) {
        this.longitude = longitude;
    }

    @Basic
    @Column(name = "latitude")
    public String getLatitude() {
        return latitude;
    }

    public void setLatitude(String latitude) {
        this.latitude = latitude;
    }

    @Basic
    @Column(name = "belongto_town")
    public String getBelongtoTown() {
        return belongtoTown;
    }

    public void setBelongtoTown(String belongtoTown) {
        this.belongtoTown = belongtoTown;
    }
    @Basic
    @Column(name = "building_name")
    public String getBuildingName() {
        return buildingName;
    }

    public void setBuildingName(String buildingName) {
        this.buildingName = buildingName;
    }
    @Basic
    @Column(name = "building_age")
    public String getBuildingAge() {
        return buildingAge;
    }

    public void setBuildingAge(String buildingAge) {
        this.buildingAge = buildingAge;
    }
    @Basic
    @Column(name = "site_type")
    public String getSiteType() {
        return siteType;
    }

    public void setSiteType(String siteType) {
        this.siteType = siteType;
    }
    @Basic
    @Column(name = "base_type")
    public String getBaseType() {
        return baseType;
    }

    public void setBaseType(String baseType) {
        this.baseType = baseType;
    }
    @Basic
    @Column(name = "fortify_standard")
    public String getFortifyStandard() {
        return fortifyStandard;
    }

    public void setFortifyStandard(String fortifyStandard) {
        this.fortifyStandard = fortifyStandard;
    }
    @Basic
    @Column(name = "natural_vibration_period")
    public Double getNaturalVibrationPeriod() {
        return naturalVibrationPeriod;
    }

    public void setNaturalVibrationPeriod(Double naturalVibrationPeriod) {
        this.naturalVibrationPeriod = naturalVibrationPeriod;
    }
    @Basic
    @Column(name = "regular_level")
    public String getRegularLevel() {
        return regularLevel;
    }

    public void setRegularLevel(String regularLevel) {
        this.regularLevel = regularLevel;
    }
    @Basic
    @Column(name = "building_area")
    public Double getBuildingArea() {
        return buildingArea;
    }

    public void setBuildingArea(Double buildingArea) {
        this.buildingArea = buildingArea;
    }
    @Basic
    @Column(name = "building_length")
    public Double getBuildingLength() {
        return buildingLength;
    }

    public void setBuildingLength(Double buildingLength) {
        this.buildingLength = buildingLength;
    }
    @Basic
    @Column(name = "building_width")
    public Double getBuildingWidth() {
        return buildingWidth;
    }

    public void setBuildingWidth(Double buildingWidth) {
        this.buildingWidth = buildingWidth;
    }
    @Basic
    @Column(name = "floor_num")
    public Integer getFloorNum() {
        return floorNum;
    }

    public void setFloorNum(Integer floorNum) {
        this.floorNum = floorNum;
    }
    @Basic
    @Column(name = "building_height")
    public Double getBuildingHeight() {
        return buildingHeight;
    }

    public void setBuildingHeight(Double buildingHeight) {
        this.buildingHeight = buildingHeight;
    }
    @Basic
    @Column(name = "cz_type")
    public String getCzType() {
        return czType;
    }

    public void setCzType(String czType) {
        this.czType = czType;
    }
    @Basic
    @Column(name = "czqqz_type")
    public String getCzqqzType() {
        return czqqzType;
    }

    public void setCzqqzType(String czqqzType) {
        this.czqqzType = czqqzType;
    }
    @Basic
    @Column(name = "zhqjjcqkd")
    public String getZhqjjcqkd() {
        return zhqjjcqkd;
    }

    public void setZhqjjcqkd(String zhqjjcqkd) {
        this.zhqjjcqkd = zhqjjcqkd;
    }
    @Basic
    @Column(name = "ltjbz")
    public String getLtjbz() {
        return ltjbz;
    }

    public void setLtjbz(String ltjbz) {
        this.ltjbz = ltjbz;
    }
    @Basic
    @Column(name = "out_wall_thick")
    public Integer getOutWallThick() {
        return outWallThick;
    }

    public void setOutWallThick(Integer outWallThick) {
        this.outWallThick = outWallThick;
    }
    @Basic
    @Column(name = "in_wall_thick")
    public Integer getInWallThick() {
        return inWallThick;
    }

    public void setInWallThick(Integer inWallThick) {
        this.inWallThick = inWallThick;
    }
    @Basic
    @Column(name = "wall_material")
    public String getWallMaterial() {
        return wallMaterial;
    }

    public void setWallMaterial(String wallMaterial) {
        this.wallMaterial = wallMaterial;
    }
    @Basic
    @Column(name = "mortar_type")
    public String getMortarType() {
        return mortarType;
    }

    public void setMortarType(String mortarType) {
        this.mortarType = mortarType;
    }
    @Basic
    @Column(name = "mortar_strength")
    public String getMortarStrength() {
        return mortarStrength;
    }

    public void setMortarStrength(String mortarStrength) {
        this.mortarStrength = mortarStrength;
    }
    @Basic
    @Column(name = "zhntqd_level")
    public String getZhntqdLevel() {
        return zhntqdLevel;
    }

    public void setZhntqdLevel(String zhntqdLevel) {
        this.zhntqdLevel = zhntqdLevel;
    }
    @Basic
    @Column(name = "zyzjm_size")
    public String getZyzjmSize() {
        return zyzjmSize;
    }

    public void setZyzjmSize(String zyzjmSize) {
        this.zyzjmSize = zyzjmSize;
    }
    @Basic
    @Column(name = "zyljm_size")
    public String getZyljmSize() {
        return zyljmSize;
    }

    public void setZyljmSize(String zyljmSize) {
        this.zyljmSize = zyljmSize;
    }
    @Basic
    @Column(name = "zdz_span")
    public Double getZdzSpan() {
        return zdzSpan;
    }

    public void setZdzSpan(Double zdzSpan) {
        this.zdzSpan = zdzSpan;
    }
    @Basic
    @Column(name = "zdlkd")
    public Double getZdlkd() {
        return zdlkd;
    }

    public void setZdlkd(Double zdlkd) {
        this.zdlkd = zdlkd;
    }
    @Basic
    @Column(name = "jlqhntqd_level")
    public String getJlqhntqdLevel() {
        return jlqhntqdLevel;
    }

    public void setJlqhntqdLevel(String jlqhntqdLevel) {
        this.jlqhntqdLevel = jlqhntqdLevel;
    }
    @Basic
    @Column(name = "jlqzd_span")
    public Double getJlqzdSpan() {
        return jlqzdSpan;
    }

    public void setJlqzdSpan(Double jlqzdSpan) {
        this.jlqzdSpan = jlqzdSpan;
    }
    @Basic
    @Column(name = "shearwell_thickness")
    public String getShearwellThickness() {
        return shearwellThickness;
    }

    public void setShearwellThickness(String shearwellThickness) {
        this.shearwellThickness = shearwellThickness;
    }
    @Basic
    @Column(name = "roof_type")
    public String getRoofType() {
        return roofType;
    }

    public void setRoofType(String roofType) {
        this.roofType = roofType;
    }
    @Basic
    @Column(name = "floor_type")
    public String getFloorType() {
        return floorType;
    }

    public void setFloorType(String floorType) {
        this.floorType = floorType;
    }
    @Basic
    @Column(name = "cwmgj")
    public String getCwmgj() {
        return cwmgj;
    }

    public void setCwmgj(String cwmgj) {
        this.cwmgj = cwmgj;
    }
    @Basic
    @Column(name = "parapet_install")
    public String getParapetInstall() {
        return parapetInstall;
    }

    public void setParapetInstall(String parapetInstall) {
        this.parapetInstall = parapetInstall;
    }
    @Basic
    @Column(name = "czz_place")
    public String getCzzPlace() {
        return czzPlace;
    }

    public void setCzzPlace(String czzPlace) {
        this.czzPlace = czzPlace;
    }
    @Basic
    @Column(name = "jl_install")
    public String getJlInstall() {
        return jlInstall;
    }

    public void setJlInstall(String jlInstall) {
        this.jlInstall = jlInstall;
    }
    @Basic
    @Column(name = "jlzdsp_span")
    public String getJlzdspSpan() {
        return jlzdspSpan;
    }

    public void setJlzdspSpan(String jlzdspSpan) {
        this.jlzdspSpan = jlzdspSpan;
    }
    @Basic
    @Column(name = "jlbhqk")
    public String getJlbhqk() {
        return jlbhqk;
    }

    public void setJlbhqk(String jlbhqk) {
        this.jlbhqk = jlbhqk;
    }
    @Basic
    @Column(name = "building_situation")
    public String getBuildingSituation() {
        return buildingSituation;
    }

    public void setBuildingSituation(String buildingSituation) {
        this.buildingSituation = buildingSituation;
    }
    @Basic
    @Column(name = "building_cost")
    public Double getBuildingCost() {
        return buildingCost;
    }

    public void setBuildingCost(Double buildingCost) {
        this.buildingCost = buildingCost;
    }
    @Basic
    @Column(name = "building_photo")
    public String getBuildingPhoto() {
        return buildingPhoto;
    }

    public void setBuildingPhoto(String buildingPhoto) {
        this.buildingPhoto = buildingPhoto;
    }
    @Basic
    @Column(name = "detail_file")
    public String getDetailFile() {
        return detailFile;
    }

    public void setDetailFile(String detailFile) {
        this.detailFile = detailFile;
    }
    @Basic
    @Column(name = "msg_illustrate")
    public String getMsgIllustrate() {
        return msgIllustrate;
    }

    public void setMsgIllustrate(String msgIllustrate) {
        this.msgIllustrate = msgIllustrate;
    }
    @Basic
    @Column(name = "status")
    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }
    @Basic
    @Column(name = "check_user")
    public String getCheckUser() {
        return checkUser;
    }

    public void setCheckUser(String checkUser) {
        this.checkUser = checkUser;
    }
    @Basic
    @Column(name = "check_opinion")
    public String getCheckOpinion() {
        return checkOpinion;
    }

    public void setCheckOpinion(String checkOpinion) {
        this.checkOpinion = checkOpinion;
    }
    @Basic
    @Column(name = "create_user")
    public String getCreateUser() {
        return createUser;
    }

    public void setCreateUser(String createUser) {
        this.createUser = createUser;
    }
    @Basic
    @Column(name = "collect_user")
    public String getCollectUser() {
        return collectUser;
    }

    public void setCollectUser(String collectUser) {
        this.collectUser = collectUser;
    }
    @Basic
    @Column(name = "create_time")
    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }
    @Basic
    @Column(name = "update_user")
    public String getUpdateUser() {
        return updateUser;
    }

    public void setUpdateUser(String updateUser) {
        this.updateUser = updateUser;
    }
    @Basic
    @Column(name = "update_time")
    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }
    @Basic
    @Column(name = "del_flag")
    public String getDelFlag() {
        return delFlag;
    }

    public void setDelFlag(String delFlag) {
        this.delFlag = delFlag;
    }
    @Basic
    @Column(name = "task_id")
    public String getTaskId() {
        return taskId;
    }

    public void setTaskId(String taskId) {
        this.taskId = taskId;
    }
    @Basic
    @Column(name = "task_name")
    public String getTaskName() {
        return taskName;
    }

    public void setTaskName(String taskName) {
        this.taskName = taskName;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        FwOtherStructureEntity that = (FwOtherStructureEntity) o;
        return Objects.equals(id, that.id) &&
                Objects.equals(otherStructureNum, that.otherStructureNum) &&
                Objects.equals(belongtoProvince, that.belongtoProvince) &&
                Objects.equals(belongtoCity, that.belongtoCity) &&
                Objects.equals(belongtoArea, that.belongtoArea) &&
                Objects.equals(belongtoStreet, that.belongtoStreet) &&
                Objects.equals(belongtoTown, that.belongtoTown) &&
                Objects.equals(buildingName, that.buildingName) &&
                Objects.equals(buildingAge, that.buildingAge) &&
                Objects.equals(siteType, that.siteType) &&
                Objects.equals(baseType, that.baseType) &&
                Objects.equals(fortifyStandard, that.fortifyStandard) &&
                Objects.equals(naturalVibrationPeriod, that.naturalVibrationPeriod) &&
                Objects.equals(regularLevel, that.regularLevel) &&
                Objects.equals(buildingArea, that.buildingArea) &&
                Objects.equals(buildingLength, that.buildingLength) &&
                Objects.equals(buildingWidth, that.buildingWidth) &&
                Objects.equals(floorNum, that.floorNum) &&
                Objects.equals(buildingHeight, that.buildingHeight) &&
                Objects.equals(czType, that.czType) &&
                Objects.equals(czqqzType, that.czqqzType) &&
                Objects.equals(zhqjjcqkd, that.zhqjjcqkd) &&
                Objects.equals(ltjbz, that.ltjbz) &&
                Objects.equals(outWallThick, that.outWallThick) &&
                Objects.equals(inWallThick, that.inWallThick) &&
                Objects.equals(wallMaterial, that.wallMaterial) &&
                Objects.equals(mortarType, that.mortarType) &&
                Objects.equals(mortarStrength, that.mortarStrength) &&
                Objects.equals(zhntqdLevel, that.zhntqdLevel) &&
                Objects.equals(zyzjmSize, that.zyzjmSize) &&
                Objects.equals(zyljmSize, that.zyljmSize) &&
                Objects.equals(zdzSpan, that.zdzSpan) &&
                Objects.equals(zdlkd, that.zdlkd) &&
                Objects.equals(jlqhntqdLevel, that.jlqhntqdLevel) &&
                Objects.equals(jlqzdSpan, that.jlqzdSpan) &&
                Objects.equals(shearwellThickness, that.shearwellThickness) &&
                Objects.equals(roofType, that.roofType) &&
                Objects.equals(floorType, that.floorType) &&
                Objects.equals(cwmgj, that.cwmgj) &&
                Objects.equals(parapetInstall, that.parapetInstall) &&
                Objects.equals(czzPlace, that.czzPlace) &&
                Objects.equals(jlInstall, that.jlInstall) &&
                Objects.equals(jlzdspSpan, that.jlzdspSpan) &&
                Objects.equals(jlbhqk, that.jlbhqk) &&
                Objects.equals(buildingSituation, that.buildingSituation) &&
                Objects.equals(buildingCost, that.buildingCost) &&
                Objects.equals(buildingPhoto, that.buildingPhoto) &&
                Objects.equals(detailFile, that.detailFile) &&
                Objects.equals(msgIllustrate, that.msgIllustrate) &&
                Objects.equals(status, that.status) &&
                Objects.equals(checkUser, that.checkUser) &&
                Objects.equals(checkOpinion, that.checkOpinion) &&
                Objects.equals(createUser, that.createUser) &&
                Objects.equals(collectUser, that.collectUser) &&
                Objects.equals(createTime, that.createTime) &&
                Objects.equals(updateUser, that.updateUser) &&
                Objects.equals(updateTime, that.updateTime) &&
                Objects.equals(delFlag, that.delFlag) &&
                Objects.equals(taskId, that.taskId) &&
                Objects.equals(taskName, that.taskName);
    }

    @Override
    public int hashCode() {
        return Objects.hash(id, otherStructureNum, belongtoProvince, belongtoCity, belongtoArea, belongtoStreet, belongtoTown, buildingName, buildingAge, siteType, baseType, fortifyStandard, naturalVibrationPeriod, regularLevel, buildingArea, buildingLength, buildingWidth, floorNum, buildingHeight, czType, czqqzType, zhqjjcqkd, ltjbz, outWallThick, inWallThick, wallMaterial, mortarType, mortarStrength, zhntqdLevel, zyzjmSize, zyljmSize, zdzSpan, zdlkd, jlqhntqdLevel, jlqzdSpan, shearwellThickness, roofType, floorType, cwmgj, parapetInstall, czzPlace, jlInstall, jlzdspSpan, jlbhqk, buildingSituation, buildingCost, buildingPhoto, detailFile, msgIllustrate, status, checkUser, checkOpinion, createUser, collectUser, createTime, updateUser, updateTime, delFlag, taskId, taskName);
    }
}
